package testdemo;
//实现一个类，类中包含一个数组成员，使得数组中可以存放任何数据类型
//也可以根据成员方法返回数组中某个下标的值
/**
 *
 * @param <T> 占位符，当前类是一个泛型类
 */
class MyArray<T> {
    public Object[] array = new Object[10];//数组中可以放任何数据类型

    public void setValue(int pos,T val){
        array[pos] = val;
    }

    public T getValue(int pos){
        return (T) array[pos];
    }
}


public class TestDemo1 {
    public static void main(String[] args) {
        MyArray<String> myArray = new MyArray<>();

    }
    public static void main1(String[] args) {
        MyArray<String> myArray = new MyArray();
        myArray.setValue(0,"hello");
        myArray.setValue(1,"world");
        myArray.setValue(2,"mingzhi");

//        String str = myArray.getValue(2);会报错 返回object 需要强转
        String str = myArray.getValue(2);

        MyArray<Integer> myArray2 = new MyArray();
        myArray2.setValue(0,10);
        myArray2.setValue(2,20);
        myArray2.setValue(1,30);
    }
}


















